#include "ABMBretel.h"

 ABMBretel::ABMBretel(std::string nArchivo, unsigned int tamanioBucket){
	this->nArchivo=nArchivo;
	this->tamanioBucket=tamanioBucket;
	hashBretel=new Hash(nArchivo,tamanioBucket);
}

 ABMBretel::~ABMBretel(){

}

bool ABMBretel::alta(unsigned int id, string descripcion){
	Key key = Key(id,descripcion);
	return hashBretel->insertar(key);
}

bool ABMBretel::baja(unsigned int id){
	Key key = Key(id,"");
	return hashBretel->eliminar(key);
}

bool ABMBretel::modificacion(unsigned int id, string descripcion){
	Key key = Key(id,descripcion);
	return hashBretel->modificar(key);
}

/*si lo encuentra devuelve el valor de Key con los atributos separados por ; */

string ABMBretel::buscar(unsigned int id){
	Key key = Key(id,"");
	if (hashBretel->existe(key))
	return Util::intToString(id) + ";" + hashBretel->buscar(key);
	else return "";
}

vector<string>  ABMBretel::listar(unsigned int maxid){
	vector<string> vector;
	for (unsigned int i=0;i<=maxid;i++){
		Key key=Key(i,"");
		if (hashBretel->existe(key)){
			string valorVector=Util::uIntToString(i) + ";" + hashBretel->buscar(key);
			vector.push_back(valorVector);
		}
	}
	return vector;
}





